package gff.model.dao;

import gff.vo.ConcentradoVO;
import gff.vo.ReglasVO;
import gff.vo.UnidadesVO;

import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;

import com.ibatis.sqlmap.client.SqlMapException;



public class UnidadesDAOImp extends SqlMapClientDaoSupport implements UnidadesDAO {

	@SuppressWarnings("unchecked")
	public List<UnidadesVO> getUnidades() throws SqlMapException,SQLException{

		try {

			return  (List<UnidadesVO>) getSqlMapClient().queryForList
					("ADMON_UNIDADES.getUnidades");
		} catch (Exception e) {
			logger.error("Error al obtener getUnidades" + e.getMessage());
		}
		return null;



	}
	
	@SuppressWarnings("unchecked")
	public List<UnidadesVO> getUnidadesRegla() throws SqlMapException,SQLException{

		try {

			return  (List<UnidadesVO>) getSqlMapClient().queryForList
					("ADMON_UNIDADES.getUnidadesRegla");
		} catch (Exception e) {
			logger.error("Error al obtener getUnidadesRegla" + e.getMessage());
		}
		return null;



	}
	

	public UnidadesVO getUnidad() throws SqlMapException,SQLException{
		try {

			return  (UnidadesVO) getSqlMapClient().queryForObject
					("ADMON_UNIDADES.getUnidad");
		} catch (Exception e) {
					logger.error("Error al obtener getUnidad" + e.getMessage());
		}
		return null;



	}
	
	@SuppressWarnings("unchecked")
	public List<ReglasVO> getReglas(ReglasVO reglas) throws SqlMapException,SQLException{

		try {

			return  (List<ReglasVO>) getSqlMapClient().queryForList
					("ADMON_UNIDADES.getReglas" , reglas);
		} catch (Exception e) {
			logger.error("Error al obtener geReglas" + e.getMessage());
		}
		return null;



	}

	@SuppressWarnings("unchecked")
	public ArrayList<ReglasVO> getRegla(ReglasVO reglas) throws SqlMapException,SQLException{

		try {

			return  (ArrayList<ReglasVO>) getSqlMapClient().queryForList
					("ADMON_UNIDADES.getRegla" , reglas);
		} catch (Exception e) {
			logger.error("Error al obtener geReglas" + e.getMessage());
		}
		return null;



	}
	
	@SuppressWarnings("unchecked")
	public List<ConcentradoVO> getConcentrado() throws SqlMapException,SQLException{

		try {

			return  (List<ConcentradoVO>) getSqlMapClient().queryForList
					("ADMON_UNIDADES.getConcentrado" );
		} catch (Exception e) {
			logger.error("Error al obtener getConcentrado" + e.getMessage());
		}
		return null;



	}

}
